package com.oauth.google.server.orkut.service;

import com.oauth.common.server.beans.OAuthAccessToken;
import com.oauth.common.server.beans.OAuthRequestToken;
import com.oauth.google.client.beans.orkut.OrkutBirthdayDetails;
import com.oauth.google.client.beans.orkut.OrkutFriendDetails;
import com.oauth.google.client.beans.orkut.OrkutScrapDetails;
import com.oauth.google.client.beans.orkut.OrkutUser;
import com.oauth.google.server.beans.GoogleRequestToken;

public interface OrkutOAuthService {
	GoogleRequestToken getRequestToken() throws Exception;

	OAuthAccessToken getAccessTokenFromDB(Long pMemberId) throws Exception;

	void persistAccessToken(OAuthAccessToken pAccessToken, Long pMemberId) throws Exception;

	OAuthAccessToken getAccessTokenFromRequestToken(OAuthRequestToken pRequestToken,
			String pOAuthVerifier) throws Exception;

	OrkutScrapDetails getScraps(Long pMemberId) throws Exception;

	OrkutFriendDetails getFriends(Long pMemberId) throws Exception;

	OrkutBirthdayDetails getUpcomingBirthdays(Long pMemberId) throws Exception;

	OrkutUser getLoggedInUserInfo(Long pMemberId) throws Exception;

	void updateStatus(String pText, Long pMemberId) throws Exception;
}
